From da6bb52872a5caca6faeba35914af7357202289a Mon Sep 17 00:00:00 2001 From: "iap10@freefall.cl.cam.ac.uk" Date: Tue, 8 Feb 2005 19:23:44 +0000 Subject: [PATCH] bitkeeper revision 1.1159.255.1 (420911c0Dpqzcuh7CS1OpkVP4miSbQ) misc debug audit cleanups Signed-off-by: ian.pratt@cl.cam.ac.uk --- xen/arch/x86/domain.c | 1 + xen/arch/x86/mm.c | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index a9c90476ab..b83e606081 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -783,6 +783,7 @@ void domain_relinquish_memory(struct domain *d) if ( pagetable_val(ed->arch.pagetable) != 0 ) put_page_and_type(&frame_table[pagetable_val(ed->arch.pagetable) >> PAGE_SHIFT]); + ed->arch.pagetable = mk_pagetable(0); } #ifdef CONFIG_VMX diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index bcf927ef50..23d4dcedb5 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -2320,8 +2320,9 @@ void audit_domain(struct domain *d) /* PHASE 1 */ - - adjust(&frame_table[pagetable_val(d->exec_domain[0]->arch.pagetable)>>PAGE_SHIFT], -1, 1); + if ( pagetable_val(d->exec_domain[0]->arch.pagetable) ) + adjust(&frame_table[pagetable_val(d->exec_domain[0]->arch.pagetable) + >>PAGE_SHIFT], -1, 1); list_ent = d->page_list.next; for ( i = 0; (list_ent != &d->page_list); i++ ) @@ -2574,10 +2575,11 @@ void audit_domain(struct domain *d) spin_unlock(&d->page_alloc_lock); - adjust(&frame_table[pagetable_val( - d->exec_domain[0]->arch.pagetable)>>PAGE_SHIFT], 1, 1); + if ( pagetable_val(d->exec_domain[0]->arch.pagetable) ) + adjust(&frame_table[pagetable_val( + d->exec_domain[0]->arch.pagetable)>>PAGE_SHIFT], 1, 1); - printk("Audit %d: Done. ctot=%d ttot=%d\n", d->id, ctot, ttot ); + printk("Audit %d: Done. pages=%d ctot=%d ttot=%d\n", d->id, i, ctot, ttot ); if ( d != current->domain ) domain_unpause(d); -- 2.30.2